Various systems have been adopted to carry digitally encoded signals for communication applications, such as, telephone, video, and data services. These systems are often connection-oriented packet mode transmission systems, such as, asynchronous transfer mode (ATM) systems, frame relay systems, X.25 systems, or other transmission systems. Connection-oriented systems (e.g., ATM systems) have been employed in private and public communication systems or networks to transfer packetized signals (e.g., data cells or protocol data units) across communication lines, such as, telephone lines, cables, optical fibers, air waves, satellite links, or other communication media.
As an example, the ATM system transfers the data cells or units across the ATM system via connections or channels. The data cells can represent voice, sound, video, graphics, data, or combinations thereof for use in computing or communication applications. The connections can be part of a single physical link carrying a number of logical connections or be a single isolated path. The connections can be virtual channel connections (VCC), permanent virtual connections (PVC), switched virtual connections (SVC), or other types of connections. Connections are generally defined by a source and a destination for the data cell.
Generally, the ATM system communicates with systems, networks, or other equipment coupled to it via an edge device. The edge device receives the data cells from the ATM system and provides data units representing the cells to the systems coupled thereto. Additionally, the edge device receives data units from the systems coupled thereto it and provides data cells representative of the data units to the ATM system. Thus, the edge device can provide translation and routing functions, such as, adaptation, segmentation, and reassembly operations to interface the systems coupled to it to the ATM system. The edge device often must adapt the data cells of the ATM system to the formats of the systems coupled thereto. The edge device can be an adapting network interface card, an adapting hub, an adapting switch, an adapting concentrator, an ATM desktop device, a router access multiplexer, or other interface device.
As the ATM system provides data cells to the edge device, the data cells can saturate the equipment, the systems, the sub-networks, or the networks which are coupled to the edge device. If the ATM system provides a large number of data cells to a particular system, the system may not be able to keep up with the arrival of the data cells and can become overloaded. As the data cells are not transferred to the system coupled to the edge device, the ATM system exercises an early packet discard (EPD) operation, and the entire level 3 protocol data unit is dumped to avoid transmitting partially completed information in the ATM system. The level 3 protocol data unit can include a number of data cells. However, as protocol data units are dumped, the data cells in those units must be resent and further contribute to the congestion in the system coupled to the edge device as well as in the ATM system.
To prevent the ATM system from congesting the edge device and the systems coupled to the edge device, prior art edge devices have prevented data cells from the ATM system (e.g., turned off all connections) from entering the systems coupled to the edge device. These prior art edge devices have simply not allowed any cells from all connections in the ATM to reach the systems coupled to the edge device once a congestion situation is detected. Although this technique relieves congestion in the systems coupled to the edge device, this technique unnecessarily prevents data cells from all connections from being received, especially when only one connection or a few connections create the congestion problem.
For example, if a single connection in the ATM system is providing a large number of data cells, and other connections in the ATM system are providing a minimal or more typical number of cells, the technique of the prior art edge devices would simply turn off all connections, thereby preventing any cells from reaching the systems coupled to the edge device. In such a situation, the connections which are not causing the congestion would still be denied access to the system coupled to the edge device, even though only one connection ("the bad citizen") has caused the congestion. This type of congestion problem from a single or a few connections can be augmented by the EPD operation, because the dumped data cells are resent if part of the protocol data unit is lost. This is a particular difficulty if the connection or the system coupled to the edge device is experiencing a malfunction which prevents the cell from reaching the destination, because the connection continues to send the cell over and over due to the EPD operation. In such a situation, one connection in the ATM system can prevent all connections from reaching the system coupled to the edge device.
Thus, there is a need to more effectively relieve congestion on networks or systems coupled to a connection-oriented system. Further still, there is a need for a buffer or fire wall between the ATM system and other systems coupled to it which intelligently relieves congestion. Further still, there is a need for a proactive mechanism which limits data cell traffic coming into a system coupled to an edge device based upon operational parameters of the edge device and the system.